package com.hxxy.wyp.petsLover.common.services.base.fronted;

import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.hxxy.wyp.petsLover.common.entities.User;
import com.hxxy.wyp.petsLover.common.entities.vo.req.RuleFormReq;
import com.hxxy.wyp.petsLover.common.entities.vo.req.UserLoginInfo;
import com.hxxy.wyp.petsLover.common.entities.vo.req.UserRegisterReq;
import com.hxxy.wyp.petsLover.common.entities.vo.req.ValidatedCodeReq;
import com.hxxy.wyp.petsLover.common.entities.vo.resp.AuthInfo;
import com.hxxy.wyp.petsLover.common.entities.vo.resp.CenterInfoVo;

public interface UserService extends IService<User> {
    Integer updateByUser(User user);

    Page pageSearch(Page pageInfo, LambdaQueryWrapper<User> lambdaQueryWrapper);

    Integer enableOrDisableUser(Long id);

    Integer updatePass(RuleFormReq ruleFormReq);

    AuthInfo login(UserLoginInfo userLoginInfo);

    void getCode(ValidatedCodeReq validatedCodeReq);

    Integer register(UserRegisterReq userRegisterReq);

    CenterInfoVo getCenterInfo();

    void logout();

    void sendSaleBackMsg(String orderId);
}
